Telegram Group & Telegram Channel
👣 Как работает разметка диска: парсим MBR и GPT на Go

Отличный технический гайд — как на языке Go реализовать свой инструмент для анализа разделов диска (аналог `fdisk -l`), работая напрямую с «сырыми» байтами.

📌 Что делает утилита:
• Считывает первые 512 байт с диска (MBR)
• Определяет тип таблицы разделов: MBR или GPT
• Парсит нужные структуры (MBRPartition, GPTHeader и др.)
• Выводит информацию о каждом разделе: смещение, размер, активность, тип, имя (для GPT)

🔧 Поддерживается два формата:
1. MBR (Master Boot Record)
• До 4 основных разделов
• Ограничение — 2 ТБ
• Таблица находится в первом секторе (512 байт)
• Каждая запись — 16 байт, с полями CHS, LBA, типом и флагами
• В конце сигнатура 0x55AA

2. GPT (GUID Partition Table)
• Современный стандарт с поддержкой >2 ТБ
• Использует специальные GUID-идентификаторы
• Поддерживает до 128 разделов
• Содержит основной и резервный заголовки + таблицу с метаданными и именами разделов в UTF‑16

📖 Примеры кода в Go:
• Структуры описаны через struct с бинарными полями
• Используется binary.Read для чтения блоков
• Есть вспомогательные функции для расшифровки типов и конвертации размеров

Выводит таблицу всех разделов, включая размер, активность, смещение и, при GPT, имя раздела.

💡 Почему это полезно:
• Позволяет лучше понять, как устроена разметка дисков
• Учит читать бинарные форматы и парсить их в Go
• Подходит для системного программирования, утилит, диагностики и низкоуровневой работы с железом

🧪 Автор также упоминает возможные улучшения:
• Проверка CRC
• Поддержка расширенных и логических разделов
• Чтение заголовков файловых систем
• Реализация в WebAssembly для запуска в браузере

📎 Читать
Please open Telegram to view this post
VIEW IN TELEGRAM



tg-me.com/golang_books/996
Create:
Last Update:

👣 Как работает разметка диска: парсим MBR и GPT на Go

Отличный технический гайд — как на языке Go реализовать свой инструмент для анализа разделов диска (аналог `fdisk -l`), работая напрямую с «сырыми» байтами.

📌 Что делает утилита:
• Считывает первые 512 байт с диска (MBR)
• Определяет тип таблицы разделов: MBR или GPT
• Парсит нужные структуры (MBRPartition, GPTHeader и др.)
• Выводит информацию о каждом разделе: смещение, размер, активность, тип, имя (для GPT)

🔧 Поддерживается два формата:
1. MBR (Master Boot Record)
• До 4 основных разделов
• Ограничение — 2 ТБ
• Таблица находится в первом секторе (512 байт)
• Каждая запись — 16 байт, с полями CHS, LBA, типом и флагами
• В конце сигнатура 0x55AA

2. GPT (GUID Partition Table)
• Современный стандарт с поддержкой >2 ТБ
• Использует специальные GUID-идентификаторы
• Поддерживает до 128 разделов
• Содержит основной и резервный заголовки + таблицу с метаданными и именами разделов в UTF‑16

📖 Примеры кода в Go:
• Структуры описаны через struct с бинарными полями
• Используется binary.Read для чтения блоков
• Есть вспомогательные функции для расшифровки типов и конвертации размеров

Выводит таблицу всех разделов, включая размер, активность, смещение и, при GPT, имя раздела.

💡 Почему это полезно:
• Позволяет лучше понять, как устроена разметка дисков
• Учит читать бинарные форматы и парсить их в Go
• Подходит для системного программирования, утилит, диагностики и низкоуровневой работы с железом

🧪 Автор также упоминает возможные улучшения:
• Проверка CRC
• Поддержка расширенных и логических разделов
• Чтение заголовков файловых систем
• Реализация в WebAssembly для запуска в браузере

📎 Читать

BY Golang Books




Share with your friend now:
tg-me.com/golang_books/996

View MORE
Open in Telegram


Golang Books Telegram | DID YOU KNOW?

Date: |

What Is Bitcoin?

Bitcoin is a decentralized digital currency that you can buy, sell and exchange directly, without an intermediary like a bank. Bitcoin’s creator, Satoshi Nakamoto, originally described the need for “an electronic payment system based on cryptographic proof instead of trust.” Each and every Bitcoin transaction that’s ever been made exists on a public ledger accessible to everyone, making transactions hard to reverse and difficult to fake. That’s by design: Core to their decentralized nature, Bitcoins aren’t backed by the government or any issuing institution, and there’s nothing to guarantee their value besides the proof baked in the heart of the system. “The reason why it’s worth money is simply because we, as people, decided it has value—same as gold,” says Anton Mozgovoy, co-founder & CEO of digital financial service company Holyheld.

In many cases, the content resembled that of the marketplaces found on the dark web, a group of hidden websites that are popular among hackers and accessed using specific anonymising software.“We have recently been witnessing a 100 per cent-plus rise in Telegram usage by cybercriminals,” said Tal Samra, cyber threat analyst at Cyberint.The rise in nefarious activity comes as users flocked to the encrypted chat app earlier this year after changes to the privacy policy of Facebook-owned rival WhatsApp prompted many to seek out alternatives.Golang Books from kr


Telegram Golang Books
FROM USA